const formatTime = date => {
  const year = date.getFullYear()
  const month = date.getMonth() + 1
  const day = date.getDate()
  const hour = date.getHours()
  const minute = date.getMinutes()
  const second = date.getSeconds()

  return `${[year, month, day].map(formatNumber).join('/')} ${[hour, minute, second].map(formatNumber).join(':')}`
}

const formatNumber = n => {
  n = n.toString()
  return n[1] ? n : `0${n}`
}

const getDeviceInfo = async () => {
  return new Promise((resolve) => {
    const systemInfo = wx.getSystemInfoSync();
    wx.request({
      url: 'http://ip-api.com/json',
      success: (res) => {
        resolve({
          ip: res.data.query,
          model: systemInfo.model,
        })
      },
      fail: () => {
        resolve({
          model: systemInfo.model,
        })
      }
    })
  })
};

module.exports = {
  formatTime,
  getDeviceInfo
}
